package com.example.seed.service;

import com.example.seed.entity.SysRole;
import com.example.seed.entity.Tables;
import org.babyfish.jimmer.spring.repository.JRepository;

import java.util.List;

public interface SysRoleRepository extends JRepository<SysRole, Long> {
    default List<SysRole> findRoleSignByUserId(Long userId) {

        return sql().createQuery(Tables.SYS_ROLE_TABLE)
                .whereIf(userId != null,
                        () -> Tables.SYS_ROLE_TABLE.sysUsers(user -> user.id()
                                .eq(userId)))
                .select(Tables.SYS_ROLE_TABLE)
                .execute();
    }
}
